package kr.co.mustgo.model.service.review;

import java.util.List;
import java.util.Map;

import kr.co.mustgo.domain.review.Comment;
import kr.co.mustgo.domain.review.ReviewsBoard;

public interface ReviewsService {

	//글 입력을 처리하는 Business Logic
	public abstract void writePost(ReviewsBoard board);
	
	public abstract ReviewsBoard getPostByNo(int no);
	
	public abstract ReviewsBoard getPostByNoForForm(int no);
	
	public abstract void updatePost(ReviewsBoard board);
	
	public abstract void deletePost(int no);
		
	//페이징 리스트 조회
	public abstract Map getReviewsBoardList(int page);
	
	//댓글 추가
	public abstract void writeComment(Comment comment);
	
	//댓글 수정
	public abstract void updateComment(Comment comment);
	
	//댓글 삭제
	public abstract void deleteComment(int cmNo);
	
	//원본글에 포함된 댓글들 삭제
	public abstract void deleteCommentByNo(int no);
	
	//댓글 하나 조회
	public abstract Comment getComment(int cmNo);
	
	//원본글에 포함된 댓글들 조회
	public abstract List<Comment> getCommentByNo(int no);
	
	//검색페이징 처리, 검색된 게시물 리스트 조회
	public abstract Map getSearchList(int page, int category, String keyword);
}
